package com.to8to.thrift.esb.async.example.server;

import com.to8to.kitt.esb.DefaultServerDeamon;
import com.to8to.thrift.esb.async.example.ServiceA;
import com.to8to.thrift.esb.async.example.ServiceB;

public class ServerB extends DefaultServerDeamon {

	// public ServerB(ChannelInitializer<Channel> channelInitilizer) {
	// super(channelInitilizer);
	// }
	//
	//
	// @Override
	// public void onReloadConfig(Map<String, byte[]> config)
	// {
	// for(String file: config.keySet())
	// {
	// byte[] data = config.get(file);
	//
	// if(file.equals("server.properties"))
	// {
	// try {
	//
	// PropertiesConfiguration pc = new PropertiesConfiguration();
	//
	// pc.load(new ByteArrayInputStream(data));
	//
	// logger.info("load config: " + file + "\n");
	//
	// String d = new String(data);
	//
	// logger.info(d);
	//
	// String bind_host = pc.getString("bind_host");
	//
	// String report_host = pc.getString("report_host");
	//
	// int bind_port = pc.getInt("bind_port");
	//
	// int report_port = pc.getInt("report_port");
	//
	// super.bindAndReport(bind_host, bind_port, report_host, report_port);
	//
	// } catch (ConfigurationException e) {
	// // TODO Auto-generated catch block
	// e.printStackTrace();
	// }
	// }
	// // else if(file.equals("logback.xml"))
	// // {
	// // String xml = new String(data);
	// // LogUtils.resetConfigByData(xml);
	// // }
	// }
	// }
	//
	//
	// public static void main(String[] args) {
	//
	// ServiceBIface iface = new ServiceBIface();
	//
	// ServiceB.Processor<ServiceBIface> processor = new
	// ServiceB.Processor<ServiceBIface>(iface);
	//
	// TProtocolFactory protocalFactory = new TBinaryProtocol.Factory();
	//
	// SyncBizChannelHandler bizhandler = new SyncBizChannelHandler(processor);
	//
	// ThriftBizServerChannelInitializer channelInitilizer = new
	// ThriftBizServerChannelInitializer(protocalFactory, bizhandler,
	// ServiceB.class);
	//
	// ServerB server = new ServerB(channelInitilizer);
	//
	// ZkConfig zkconfig = new ZkConfig("zk.properties");
	//
	// server.setSyncConfigFromZK(true);
	//
	// server.setReportAddressToZK(true);
	//
	// server.setZkConfig(zkconfig);
	//
	// server.setServiceInstance(ServiceB.class.getName(), "1");
	//
	// server.start();
	// }

	public static void main(String[] args) {
		ServiceBIface iface = new ServiceBIface();

		new ServerB().start(iface, ServiceB.class, args.length > 0 ? args[0] : "1");
	}
}
